#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
#include <unistd.h>
#include <string.h>

// byte数据可以表示（0到255）或（-128到127）
// ASCII码，通过计算机字节存储文字，将对应的数字代表可以显示给人看的文字。中文等需要特殊GBK,UTF8编码
// 比如0X30这个编码，对应文字是'0'。

// ASCII控制字符
// 0到31表示为：
// 十进制	十六进制	说明
// 0	0	空字符
// 1	1	标题开始
// 2	2	正文开始
// 3	3	正文结束
// 4	4	传输结束
// 5	5	询问
// 6	6	收到通知
// 7	7	铃
// 8	8	退格
// 9	9	水平制表符
// 10	0A	换行键(\n)
// 11	0B	垂直制表符(\t)
// 12	0C	换页键
// 13	0D	回车键(\r)
// 14	0E	移出
// 15	0F	移入
// 16	10	数据链路转义
// 17	11	设备控制 1
// 18	12	设备控制 2
// 19	13	设备控制 3
// 20	14	设备控制 4
// 21	15	拒绝接收
// 22	16	同步空闲
// 23	17	传输块结束
// 24	18	取消
// 25	19	介质中断
// 26	1A	替换
// 27	1B	换码符
// 28	1C	文件分隔符
// 29	1D	组分隔符
// 30	1E	记录分离符
// 31	1F	单元分隔符

// ASCII可显示字符
// 十进制	十六进制	符号	说明
// 32	20		空格
// 33	21	!	感叹号
// 34	22	"	双引号
// 35	23	#	井号
// 36	24	$	美元符
// 37	25	%	百分号
// 38	26	&	与
// 39	27	'	单引号
// 40	28	(	左括号
// 41	29	)	右括号
// 42	2A	*	星号
// 43	2B	+	加号
// 44	2C	,	逗号
// 45	2D	-	连字号或减号
// 46	2E	.	句点或小数点
// 47	2F	/	斜杠
// 48	30	0	0
// 49	31	1	1
// 50	32	2	2
// 51	33	3	3
// 52	34	4	4
// 53	35	5	5
// 54	36	6	6
// 55	37	7	7
// 56	38	8	8
// 57	39	9	9
// 58	3A	:	冒号
// 59	3B	;	分号
// 60	3C	<	小于
// 61	3D	=	等号
// 62	3E	>	大于
// 63	3F	?	问号
// 64	40	@	电子邮件符号
// 65	41	A	大写字母 A
// 66	42	B	大写字母 B
// 67	43	C	大写字母 C
// 68	44	D	大写字母 D
// 69	45	E	大写字母 E
// 70	46	F	大写字母 F
// 71	47	G	大写字母 G
// 72	48	H	大写字母 H
// 73	49	I	大写字母 I
// 74	4A	J	大写字母 J
// 75	4B	K	大写字母 K
// 76	4C	L	大写字母 L
// 77	4D	M	大写字母 M
// 78	4E	N	大写字母 N
// 79	4F	O	大写字母 O
// 80	50	P	大写字母 P
// 81	51	Q	大写字母 Q
// 82	52	R	大写字母 R
// 83	53	S	大写字母 S
// 84	54	T	大写字母 T
// 85	55	U	大写字母 U
// 86	56	V	大写字母 V
// 87	57	W	大写字母 W
// 88	58	X	大写字母 X
// 89	59	Y	大写字母 Y
// 90	5A	Z	大写字母 Z
// 91	5B	[	左中括号
// 92	5C	\	反斜杠
// 93	5D	]	右中括号
// 94	5E	^	音调符号
// 95	5F	_	下划线
// 96	60	`	重音符
// 97	61	a	小写字母 a
// 98	62	b	小写字母 b
// 99	63	c	小写字母 c
// 100	64	d	小写字母 d
// 101	65	e	小写字母 e
// 102	66	f	小写字母 f
// 103	67	g	小写字母 g
// 104	68	h	小写字母 h
// 105	69	i	小写字母 i
// 106	6A	j	小写字母 j
// 107	6B	k	小写字母 k
// 108	6C	l	小写字母 l
// 109	6D	m	小写字母 m
// 110	6E	n	小写字母 n
// 111	6F	o	小写字母 o
// 112	70	p	小写字母 p
// 113	71	q	小写字母 q
// 114	72	r	小写字母 r
// 115	73	s	小写字母 s
// 116	74	t	小写字母 t
// 117	75	u	小写字母 u
// 118	76	v	小写字母 v
// 119	77	w	小写字母 w
// 120	78	x	小写字母 x
// 121	79	y	小写字母 y
// 122	7A	z	小写字母 z
// 123	7B	{	左大括号
// 124	7C	|	垂直线
// 125	7D	}	右大括号
// 126	7E	~	波浪号
// 127	7F		删除


// 

int main(int argc, char **argv)
{
    char char_0 = '0';
    // %c打印字符。 因为char_0保存的是'0'字符，对应的16进制内容是0X30，十进制是48.
    printf("[%s,%d]ASCII=%c,DEC=%d,HEX=%x\n", __FILE__, __LINE__, char_0, char_0, (uint8_t)char_0);

    return 1;
}



